package com.qc31.monitorlib

import android.annotation.SuppressLint
import android.os.Parcelable
import kotlinx.parcelize.Parcelize

/**
 *@Author Jasper
 *@Time   2020/10/21
 *@Desc   费用相关
 */
@SuppressLint("ParcelCreator")
@Parcelize
open class BaseFee constructor(
    val atime: String = "",
    val auser: String = "",
    val cmpId: String = "",
    val id: String = "",
    val carId: String = "",
    val feeDate: String = "",
    val remark: String = "",
    val totalFee: String = ""
) : Parcelable

@Parcelize
data class AddOilFee(
    val entityList: MutableList<InfoEntity>
) : Parcelable {
    @Parcelize
    data class InfoEntity(
        val capacity: String="",
        val mile: String="",
        val oilType: String="",
        val unitPrice: String=""
    ) : BaseFee()
}

@Parcelize
data class RepairFee(
    val entityList: MutableList<InfoEntity>
) : Parcelable {
    @Parcelize
    data class InfoEntity(
        val manHourFee: String="",
        val manageFee: String="",
        val othreFee: String="",
        val partsFee: String="",
        val procFee: String=""
    ) : BaseFee()
}

@Parcelize
data class InsureFee(
    val entityList: MutableList<InfoEntity>
) :Parcelable {
    @Parcelize
    data class InfoEntity(
        val endDate: String="",
        val insureCode: String="",
        val insuurCmp: String="",
        val jqxFee: String="",
        val startDate: String="",
        val syxFee: String=""
    ) : BaseFee()
}

@Parcelize
data class TrafficFee(
    val entityList: MutableList<InfoEntity>
) :  Parcelable {
    @Parcelize
    data class InfoEntity(
        val bridgeFee: String="",
        val highRoadFee: String="",
        val otherFee: String="",
        val stopCarFee: String="",
        val washCarFee: String=""
    ) : BaseFee()
}

@Parcelize
data class OtherFee(
    val entityList: MutableList<BaseFee>
) :Parcelable

@Parcelize
data class YearVrfFee(
    val entityList: MutableList<BaseFee>
) :  Parcelable


data class OtherInfoFee(
    val carId: String="",
    val feeDate: String="",
    val remark: String="",
    val totalFee: String=""
)

data class YearVrfInfoFee(
    val carId: String="",
    val feeDate: String="",
    val remark: String="",
    val totalFee: String=""
)

data class TrafficInfoFee(
    val carId: String="",
    val feeDate: String="",
    val remark: String="",
    val totalFee: String="",
    val bridgeFee: String="",
    val highRoadFee: String="",
    val otherFee: String="",
    val stopCarFee: String="",
    val washCarFee: String=""
)

data class InsureInfoFee(
    val carId: String="",
    val feeDate: String="",
    val remark: String="",
    val totalFee: String="",
    val endDate: String="",
    val insureCode: String="",
    val insuurCmp: String="",
    val jqxFee: String="",
    val startDate: String="",
    val syxFee: String=""
)

data class RepairInfoFee(
    val carId: String="",
    val feeDate: String="",
    val remark: String="",
    val totalFee: String="",
    val manHourFee: String="",
    val manageFee: String="",
    val othreFee: String="",
    val partsFee: String="",
    val procFee: String="",
    val img1: String="",
    val img2: String="",
    val img3: String=""
)

data class AddOilInfoFee(
    val carId: String="",
    val feeDate: String="",
    val remark: String="",
    val totalFee: String="",
    val capacity: String="",
    val mile: String="",
    val oilType: String="",
    val unitPrice: String=""
)
data class DriverVrfInfoFee(
    val driverName: String="",
    val driverType: String="",
    val driverLicense: String="",
    val idCard: String="",
    val auditUnit: String="",
    val feeDate: String="",
    val licenseDate: String="",
    val totalFee: String="",
    val remark: String=""
)



